package com.xieyong.leetcode;

public class Leetcode1957 {
    public static void main(String[] args) {
        Leetcode1957 leetcode1957 = new Leetcode1957();
        String s = "leeetcode";
        String s1 = leetcode1957.makeFancyString(s);
        System.out.println(s1);
    }


    public String makeFancyString(String s) {
        if (s.length() <= 2) {return s;}
        char prec1 = s.charAt(0);
        char prec2 = s.charAt(1);
        StringBuilder sb = new StringBuilder();
        sb.append(prec1);
        sb.append(prec2);
        for (int i = 2; i < s.length(); i++) {
            if (s.charAt(i) == prec1 && s.charAt(i) == prec2 && prec1 == prec2) {
                continue;
            } else {
                sb.append(s.charAt(i));
            }
            prec1 = prec2;
            prec2 = s.charAt(i);
        }
        return sb.toString();
    }

//    public String makeFancyString(String s) {
//        StringBuilder res = new StringBuilder();   // 删除后的字符串
//        // 遍历 s 模拟删除过程
//        for (char ch : s.toCharArray()) {
//            int n = res.length();
//            if (n >= 2 && res.charAt(n - 1) == ch && res.charAt(n - 2) == ch) {
//                // 如果 res 最后两个字符与当前字符均相等，则不添加
//                continue;
//            }
//            // 反之则添加
//            res.append(ch);
//        }
//        return res.toString();
//    }
}
